home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 April: Mac OS SDK / Dev.CD Apr 97 SDK1.toast / Development Kits (Disc 1) / QuickDraw GX / Documents / develop GX articles & columns / Dev GX Extensions code ƒ / 4-Up.r < prev    next >
Encoding:
Text File  |  1995-04-10  |  7.6 KB  |  244 lines  |  [TEXT/MPS ]

  1. /* ------------------------------------------------------------------------------
  2.  
  3.     FILENAME
  4.         4-Up.r
  5.  
  6.     DESCRIPTION
  7.         All resources required by the 4-Up extension are declared in this file.
  8.  
  9.     COPYRIGHT
  10.         Copyright Apple Computer, Inc. 1991
  11.         All rights reserved. 
  12.     
  13.     MODIFICATION HISTORY
  14.         06/10/91            PrintShop            Initial Implementation
  15.  
  16.  
  17. ------------------------------------------------------------------------------- */
  18.  
  19.  
  20. #include "Types.r"
  21. #include "PrintingResTypes.r"
  22.  
  23.  
  24. /*=================== 4-Up Code Segment and Jump Table Constants =================== */
  25.  
  26. #define    fourUpCodeSegmentID                0
  27.  
  28. #define    gxCountPagesOffset                4
  29. #define    gxDespoolPageOffset                gxCountPagesOffset + 4
  30.  
  31.  
  32. /*=================== Required Printing Extension Types and Resources =================== */
  33.  
  34.  
  35.  
  36. /*============== Printing Extension Resources… ============== */
  37.  
  38.  
  39. /*======= Printing Extension Version Resource ======= */
  40.  
  41. resource 'vers' (gxPrintingExtensionBaseID, purgeable) {
  42.     0x01, 0x00, release, 0x00,
  43.     verUS,
  44.     "1.00",
  45.     "1.00, Copyright \251 Apple Computer, Inc. 1989-1993"
  46. };
  47.  
  48.  
  49. /*======= Printing Extension Loading Priority ('load') Resource ======= */
  50.  
  51. resource gxExtensionLoadType (gxExtensionLoadID, purgeable, sysHeap)
  52. {
  53.     gxExtensionLoadAnywhere
  54. };
  55.  
  56.  
  57. /*======= Printing Extension Optimization ('eopt') Resource ======= */
  58.  
  59. resource gxExtensionOptimizationType (gxExtensionOptimizationID, purgeable, sysHeap)
  60. {
  61.     gxExecuteDuringImaging,
  62.     gxDontNeedDeviceStatus,
  63.     gxChangePageAtGXDespoolPage,
  64.     gxDontChangePageAtGXImagePage,
  65.     gxDontChangePageAtGXRenderPage,
  66.     gxNotServerPresenceRequired,
  67.     gxNotClientPresenceRequired
  68. };
  69.  
  70.  
  71. /*======= Scope ('scop') Resource ======= */
  72.  
  73. resource gxExtensionScopeType (gxDriverScopeID, purgeable, sysHeap)
  74. {
  75.     {
  76.         'univ';        // fourUp has universal scope => compatible with all devices
  77.     };
  78. };
  79.  
  80.  
  81. /*======= Message Override ('over') Resource ======= */
  82.  
  83. resource gxOverrideType (gxExtensionUniversalOverrideID, purgeable, sysHeap)
  84. {
  85.     {
  86.         gxCountPages, fourUpCodeSegmentID, gxCountPagesOffset;
  87.         gxDespoolPage, fourUpCodeSegmentID, gxDespoolPageOffset
  88.     };
  89. };
  90.  
  91.  
  92. /*=================== Standard BNDL, ICN#, and FREF Resources =================== */
  93.  
  94.  
  95. type '4-Up' as 'STR ';
  96.  
  97. resource '4-Up' (0, purgeable, sysHeap)
  98. {
  99.     "4-Up Printing Extension 1.0"
  100. };
  101.  
  102.  
  103. /* The 'BNDL', 'ICN#', and 'FREF' are needed so the extension's icon shows up. */
  104.  
  105. resource 'BNDL' (gxPrintingExtensionBaseID, purgeable, sysHeap)
  106. {
  107.     '4-Up', 0,
  108.     {    'ICN#', {0, gxPrintingExtensionBaseID},
  109.         'FREF', {0, gxPrintingExtensionBaseID}
  110.     }
  111. };
  112.  
  113. /*======= extension icon ======= */
  114.  
  115. resource 'ICN#' (gxPrintingExtensionBaseID, sysheap, purgeable) {
  116.     {    /* array: 2 elements */
  117.         /* [1] */
  118.         $"7FFF FFF0 8000 0008 8000 0008 8000 0008"
  119.         $"81FE 7F88 8102 4088 817A 5888 8102 4088"
  120.         $"A11A 5E88 D102 408A 9162 4F0D 1102 4089"
  121.         $"117A 5E81 1102 4081 11FE 7F81 1000 0001"
  122.         $"1000 0001 11FE 7F81 1102 4081 117A 5E81"
  123.         $"1102 4089 9162 5E8D D102 408A A11A 4C88"
  124.         $"8102 4088 817A 5E88 8102 4088 81FE 7F88"
  125.         $"8000 0008 8000 0008 8000 0008 7FFF FFF0",
  126.         /* [2] */
  127.         $"7FFF FFF0 FFFF FFF8 FFFF FFF8 FFFF FFF8"
  128.         $"FFFF FFF8 FFFF FFF8 FFFF FFF8 FFFF FFF8"
  129.         $"FFFF FFF8 DFFF FFFA 9FFF FFFF 1FFF FFFF"
  130.         $"1FFF FFFF 1FFF FFFF 1FFF FFFF 1FFF FFFF"
  131.         $"1FFF FFFF 1FFF FFFF 1FFF FFFF 1FFF FFFF"
  132.         $"1FFF FFFF 9FFF FFFF DFFF FFFA FFFF FFF8"
  133.         $"FFFF FFF8 FFFF FFF8 FFFF FFF8 FFFF FFF8"
  134.         $"FFFF FFF8 FFFF FFF8 FFFF FFF8 7FFF FFF0"
  135.     }
  136. };
  137.  
  138. resource 'icl4' (gxPrintingExtensionBaseID, sysheap, purgeable) {
  139.     $"0FFF FFFF FFFF FFFF FFFF FFFF FFFF 0000"
  140.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  141.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  142.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  143.     $"F000 000F FFFF FFF0 0FFF FFFF F000 F000"
  144.     $"F000 000F 0000 00F0 0F00 0000 F000 F000"
  145.     $"F000 000F 0FFF F0F0 0F0F F000 F000 F000"
  146.     $"F000 000F 0000 00F0 0F00 0000 F000 F000"
  147.     $"F0F0 000F 000F F0F0 0F0F FFF0 F000 F000"
  148.     $"FF0F 000F 0000 00F0 0F00 0000 F000 F0F0"
  149.     $"F00F 000F 0FF0 00F0 0F00 FFFF 0000 FF0F"
  150.     $"000F 000F 0000 00F0 0F00 0000 F000 F00F"
  151.     $"000F 000F 0FFF F0F0 0F0F FFF0 F000 000F"
  152.     $"000F 000F 0000 00F0 0F00 0000 F000 000F"
  153.     $"000F 000F FFFF FFF0 0FFF FFFF F000 000F"
  154.     $"000F 0000 0000 0000 0000 0000 0000 000F"
  155.     $"000F 0000 0000 0000 0000 0000 0000 000F"
  156.     $"000F 000F FFFF FFF0 0FFF FFFF F000 000F"
  157.     $"000F 000F 0000 00F0 0F00 0000 F000 000F"
  158.     $"000F 000F 0FFF F0F0 0F0F FFF0 F000 000F"
  159.     $"000F 000F 0000 00F0 0F00 0000 F000 F00F"
  160.     $"F00F 000F 0FF0 00F0 0F0F FFF0 F000 FF0F"
  161.     $"FF0F 000F 0000 00F0 0F00 0000 F000 F0F0"
  162.     $"F0F0 000F 000F F0F0 0F00 FF00 F000 F000"
  163.     $"F000 000F 0000 00F0 0F00 0000 F000 F000"
  164.     $"F000 000F 0FFF F0F0 0F0F FFF0 F000 F000"
  165.     $"F000 000F 0000 00F0 0F00 0000 F000 F000"
  166.     $"F000 000F FFFF FFF0 0FFF FFFF F000 F000"
  167.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  168.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  169.     $"F000 0000 0000 0000 0000 0000 0000 F000"
  170.     $"0FFF FFFF FFFF FFFF FFFF FFFF FFFF"
  171. };
  172.  
  173. resource 'icl8' (gxPrintingExtensionBaseID, sysheap, purgeable) {
  174.     $"00FF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"
  175.     $"FFFF FFFF FFFF FFFF FFFF FFFF 0000 0000"
  176.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  177.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  178.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  179.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  180.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  181.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  182.     $"FF00 0000 0000 00FF FFFF FFFF FFFF FF00"
  183.     $"00FF FFFF FFFF FFFF FF00 0000 FF00 0000"
  184.     $"FF00 0000 0000 00FF 0000 0000 0000 FF00"
  185.     $"00FF 0000 0000 0000 FF00 0000 FF00 0000"
  186.     $"FF00 0000 0000 00FF 00FF FFFF FF00 FF00"
  187.     $"00FF 00FF FF00 0000 FF00 0000 FF00 0000"
  188.     $"FF00 0000 0000 00FF 0000 0000 0000 FF00"
  189.     $"00FF 0000 0000 0000 FF00 0000 FF00 0000"
  190.     $"FF00 FF00 0000 00FF 0000 00FF FF00 FF00"
  191.     $"00FF 00FF FFFF FF00 FF00 0000 FF00 0000"
  192.     $"FFFF 00FF 0000 00FF 0000 0000 0000 FF00"
  193.     $"00FF 0000 0000 0000 FF00 0000 FF00 FF00"
  194.     $"FF00 00FF 0000 00FF 00FF FF00 0000 FF00"
  195.     $"00FF 0000 FFFF FFFF 0000 0000 FFFF 00FF"
  196.     $"0000 00FF 0000 00FF 0000 0000 0000 FF00"
  197.     $"00FF 0000 0000 0000 FF00 0000 FF00 00FF"
  198.     $"0000 00FF 0000 00FF 00FF FFFF FF00 FF00"
  199.     $"00FF 00FF FFFF FF00 FF00 0000 0000 00FF"
  200.     $"0000 00FF 0000 00FF 0000 0000 0000 FF00"
  201.     $"00FF 0000 0000 0000 FF00 0000 0000 00FF"
  202.     $"0000 00FF 0000 00FF FFFF FFFF FFFF FF00"
  203.     $"00FF FFFF FFFF FFFF FF00 0000 0000 00FF"
  204.     $"0000 00FF 0000 0000 0000 0000 0000 0000"
  205.     $"0000 0000 0000 0000 0000 0000 0000 00FF"
  206.     $"0000 00FF 0000 0000 0000 0000 0000 0000"
  207.     $"0000 0000 0000 0000 0000 0000 0000 00FF"
  208.     $"0000 00FF 0000 00FF FFFF FFFF FFFF FF00"
  209.     $"00FF FFFF FFFF FFFF FF00 0000 0000 00FF"
  210.     $"0000 00FF 0000 00FF 0000 0000 0000 FF00"
  211.     $"00FF 0000 0000 0000 FF00 0000 0000 00FF"
  212.     $"0000 00FF 0000 00FF 00FF FFFF FF00 FF00"
  213.     $"00FF 00FF FFFF FF00 FF00 0000 0000 00FF"
  214.     $"0000 00FF 0000 00FF 0000 0000 0000 FF00"
  215.     $"00FF 0000 0000 0000 FF00 0000 FF00 00FF"
  216.     $"FF00 00FF 0000 00FF 00FF FF00 0000 FF00"
  217.     $"00FF 00FF FFFF FF00 FF00 0000 FFFF 00FF"
  218.     $"FFFF 00FF 0000 00FF 0000 0000 0000 FF00"
  219.     $"00FF 0000 0000 0000 FF00 0000 FF00 FF00"
  220.     $"FF00 FF00 0000 00FF 0000 00FF FF00 FF00"
  221.     $"00FF 0000 FFFF 0000 FF00 0000 FF00 0000"
  222.     $"FF00 0000 0000 00FF 0000 0000 0000 FF00"
  223.     $"00FF 0000 0000 0000 FF00 0000 FF00 0000"
  224.     $"FF00 0000 0000 00FF 00FF FFFF FF00 FF00"
  225.     $"00FF 00FF FFFF FF00 FF00 0000 FF00 0000"
  226.     $"FF00 0000 0000 00FF 0000 0000 0000 FF00"
  227.     $"00FF 0000 0000 0000 FF00 0000 FF00 0000"
  228.     $"FF00 0000 0000 00FF FFFF FFFF FFFF FF00"
  229.     $"00FF FFFF FFFF FFFF FF00 0000 FF00 0000"
  230.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  231.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  232.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  233.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  234.     $"FF00 0000 0000 0000 0000 0000 0000 0000"
  235.     $"0000 0000 0000 0000 0000 0000 FF00 0000"
  236.     $"00FF FFFF FFFF FFFF FFFF FFFF FFFF FFFF"
  237.     $"FFFF FFFF FFFF FFFF FFFF FFFF"
  238. };
  239.  
  240. resource 'FREF' (gxPrintingExtensionBaseID, purgeable, sysHeap)
  241. {
  242.     'pext', 0, ""
  243. };
  244.